return {
  {
    "nvim-telescope/telescope.nvim",
    dependencies = {
      -- "nvim-lua/popup.nvim",
      "nvim-lua/plenary.nvim",
      "ThePrimeagen/refactoring.nvim",
    },

    keys = {
      -- { "<leader>,",  "<cmd>Telescope buffers show_all_buffers=true<cr>", desc = "Switch Buffer" },
      { "<leader>f:", "<cmd>Telescope command_history<cr>", desc = "Command History" },
      -- -- find
      -- { "<leader>fB", "<cmd>Telescope buffers<cr>",                       desc = "Buffers" },
      -- -- { "<leader>fb", "<cmd>Telescope file_browser<cr>",                  desc = "File_browser" },
      -- { "<leader>fr", "<cmd>Telescope oldfiles<cr>",                      desc = "Recent" },
      -- -- git
      -- { "<leader>gc", "<cmd>Telescope git_commits<CR>",                   desc = "commits" },
      -- { "<leader>gs", "<cmd>Telescope git_status<CR>",                    desc = "status" },
      -- -- search
      -- -- { '<leader>s"', "<cmd>Telescope registers<cr>", desc = "Registers" },
      -- { "<leader>sa", "<cmd>Telescope autocommands<cr>",                  desc = "Auto Commands" },
      -- { "<leader>sb", "<cmd>Telescope current_buffer_fuzzy_find<cr>",     desc = "Buffer" },
      -- { "<leader>sc", "<cmd>Telescope command_history<cr>",               desc = "Command History" },
      -- { "<leader>sC", "<cmd>Telescope commands<cr>",                      desc = "Commands" },
      -- { "<leader>sd", "<cmd>Telescope diagnostics bufnr=0<cr>",           desc = "Document diagnostics" },
      -- { "<leader>sD", "<cmd>Telescope diagnostics<cr>",                   desc = "Workspace diagnostics" },
      -- { "<leader>sh", "<cmd>Telescope help_tags<cr>",                     desc = "Help Pages" },
      -- { "<leader>sH", "<cmd>Telescope highlights<cr>",                    desc = "Search Highlight Groups" },
      -- { "<leader>sk", "<cmd>Telescope keymaps<cr>",                       desc = "Key Maps" },
      -- { "<leader>sM", "<cmd>Telescope man_pages<cr>",                     desc = "Man Pages" },
      -- { "<leader>sm", "<cmd>Telescope marks<cr>",                         desc = "Jump to Mark" },
      -- { "<leader>so", "<cmd>Telescope vim_options<cr>",                   desc = "Options" },
      -- { "<leader>sR", "<cmd>Telescope resume<cr>",                        desc = "Resume" },
    },
    opts = function(_, opts)
      local actions = require "telescope.actions"
      local telescope = require "telescope"
      telescope.load_extension "refactoring"
      telescope.load_extension "file_browser"
      return require("astronvim.utils").extend_tbl(opts, {
        extensions = {},
        pickers = {
          find_files = {
            -- dot file
            hidden = true,
          },
          buffers = {
            path_display = { "smart" },
            mappings = {
              i = { ["<c-d>"] = actions.delete_buffer },
              n = { ["d"] = actions.delete_buffer },
            },
          },
          diagnostics = {
            severity_limit = vim.diagnostic.severity.INFO,
          },
        },
      })
    end,
    -- config = function(...)
    --   require "plugins.configs.telescope" (...)
    --   -- if not vim.g.neovide then telescope.load_extension "noice" end
    -- end,
  },
  {
    "nvim-telescope/telescope-file-browser.nvim",
    event = "VeryLazy",
    keys = {
      {
        "<leader>fe",
        function() require("telescope").extensions.file_browser.file_browser {} end,
        desc = "File_browser",
      },
    },
  },
}
